The problem of sharing private or sensitive data over insecure networks is currently solved by using Public Key Infrastructure (PKI) systems. PKI is based on the concept that each identity or user has a public/private key pair. The public key is shared and made available for everyone and need not be secure. In contrast, it is very important to maintain the private key secret, and it must be carefully protected by the holder to maintain the security of the data with which the key pair is used.
The public key is used to encrypt data before the encrypted data are transmitting to a recipient who holds the private key and who is thus able to employ the private key to decrypt the data. A simple example illustrates how the PKI process is employed by two users, A and B, who are sharing sensitive information over an insecure network. First, user B sends user A the public key of the public/private key pair of user B. User A then encrypts the sensitive data with user B's public key and sends the encrypted data to user B over the insecure network. User B uses his private key to decrypt the encrypted data, thereby gaining access to the data.
This PKI model works well as long as user A is certain that user B has actually sent the public key belonging to user B that was received by user A. The concern is that the public key being used by user A to encrypt the sensitive data might have been replaced with a false public key, e.g., by a hacker who has intercepted the actual public key of user B in transit and transmitted a false public key to user A in its place. In order for user A to validate the authenticity of user B's public key, user A contacts an external certificate authority (CA) that can be trusted to correctly validate the public key. The CA is a trusted entity that verifies user identities and generates digital certificates for users that contain information about the certificate holders. The CA also acts as a verification mechanism for digital certificates and when presented with a digital certificate, can verify the information in the digital certificate. The digital certificate contains the holder identity and public key, along with other information that is given to the CA to include when generating a new certificate. Accordingly, if the CA validates the public key that user A has received as being that of user B, then user A can feel secure in employing it to encrypt the sensitive data for transmission to user B.
One of the key drawbacks of the current PKI model is that every user must undergo a verification process in order to obtain a valid certificate from a certificate authority. This requirement limits the use of the PKI model to controlled computing environments, such as within corporate networks, where the users have already passed through the verification process for other reasons. Users who wish to employ their private identities, such as in Internet emails, have no mechanism to easily obtain a third party verification of their identity or enroll in a certificate authorization service to obtain a private certificate, without undergoing complex messaging and verification processes. Also, the recurring cost of obtaining renewable private certificates is not economical for most users. Ideally, the verification process should be totally transparent, without any cost to the end user, which is one of the reasons that the PKI-based system is limited to corporations and other closed environments and not generally available to independent users.
Accordingly, it would be desirable to be able to use open authentication providers as the primary mechanism to verify a user identity, without recourse to a certificate service. Users might then choose between many different types of authentication providers, such as their bank or their Internet email provider, to provide proof of their identity. Once users have signed into an account or website run by such authentication providers and have thus established proof of their identity at a point in time, that proof might then be used to access encrypted content in a document or other type of file. This and other advantages of an alternative to the PKI system for enabling users to establish their identity and facilitate the secure exchange of protected content with other parties will be evident from the following discussion.